分散 algorithm
分散アルゴリズム - Wikipedia
並列計算 - Wikipedia
並行計算 - Wikipedia
並行性制御 - Wikipedia
同時編緝
操作變換 (OT) (operational transformation)
操作変換 - Wikipedia
Operational transformation - Wikipedia
CRDT (conflict-free replicated data type)
v.s.
Building real-time collaboration applications: OT vs CRDT
Notes on Splicing CRDTs for Structured Hypertext – Lord.io
How Figma’s multiplayer technology works
論理時計
合意
Paxsos
Paxosアルゴリズム - Wikipedia
Paxos (computer science) - Wikipedia
ランポートのパン屋のアルゴリズム - Wikipedia
Raft
Raft Consensus Algorithm
Raft (algorithm) - Wikipedia
Chandra–Toueg consensus algorithm - Wikipedia
傳播
gossip protocol
ゴシッププロトコル - Wikipedia
HashiCorp ConsulHashiCorp Consul.icon
transaction
分散トランザクション - Wikipedia (distributed transaction)
2 相 commit
2相コミット - Wikipedia
調整者 (coordinator)
參加者 (cohorts)
code:mmd
sequenceDiagram
participant 調整者
participant 參加者
調整者 ->> 參加者 : commit要求
調整者 ->> 調整者 : commit要求狀態に移行
參加者 ->> 參加者 : commit準備
參加者 -->> 調整者 : OK
調整者 ->> 參加者 : commit
調整者 ->> 調整者 : commit狀態に移行
參加者 ->> 參加者 : commit
code:mmd
sequenceDiagram
participant 調整者
participant 參加者1
participant 參加者2
調整者 ->> 參加者1 : commit要求
調整者 ->> 參加者2 : commit要求
參加者1 ->> 參加者1 : commit準備
參加者1 -->> 調整者 : OK
參加者2 -->> 調整者 : NG
調整者 ->> 參加者1 : rollback
調整者 ->> 參加者2 : rollback
參加者1 ->> 參加者1 : rollback
スターバックスは2フェーズコミットを使わない
code:mmd
TCC (try-confirm / cancel)
3 相 commit
3相コミット - Wikipedia
Dale Skeen, Michael Stonebraker “A Formal Model of Crash Recovery in a Distributed System” 1983/5/31
分散データベースシステムにおける原子的コミットプロトコルのための形式的モデルが提案される。このモデルは、ネットワークを分割しないサイト障礙に對する耐障礙性プロトコルの存在性を證明するために用ゐられる。さらに、ネットワークが分割された場合についても考察する。サイト障礙に關しては、「獨立恢復」と呼ばれる悲觀的恢復手法を導入し、耐障礙性プロトコルが存在し得る障礙のクラスを特定する。ネットワークが分割された場合については、2 つのケースを詳細に檢討する : メッセージが消失する悲觀的ケースと、メッセージが消失しない樂觀的ケースである。いづれの場合においても、プロトコルの耐障礙性に關する根本的な制約條件が導出される。
timeout を取り扱へる
code:mmd
sequenceDiagram
participant 調整者
participant 參加者
調整者 ->> 參加者 : canCommit?
調整者 ->> 調整者 : 待機狀態に移行
參加者 -->> 調整者 : Yes
調整者 ->> 參加者 : preCommit
調整者 ->> 調整者 : 準備狀態に移行
參加者 ->> 參加者 : commit
參加者 -->> 調整者 : ACK
調整者 ->> 調整者 : commit狀態に移行
saga
コミットメント順序付け - Wikipedia
event sourcing
遠隔手續き呼出し (RPC)
messaging
AMQP (advanced message queuing protocol)
Advanced Message Queuing Protocol - Wikipedia
MQTT
XMPP
WebSub
a.k.a. PubSubHubbub
WebSub - Wikipedia
P2P (peer to peer)
Peer to Peer - Wikipedia
IP (Internet protocol)
分散 hash table (DHT) (distributed hash table)
分散ハッシュテーブル - Wikipedia
Chord
Chord - Wikipedia
Kademlia
Kademlia - Wikipedia
InterPlanetary File System - Wikipedia
WebRTC
WebRTC
WebRTC API - Web API | MDN
WebRTC - Wikipedia
分散型台帳 - Wikipedia
blockchain
ブロックチェーン - Wikipedia
proof of X
プルーフ・オブ・ワークシステム - Wikipedia
Proof of work - Wikipedia
プルーフ・オブ・ステーク - Wikipedia
Proof of stake - Wikipedia
Proof of authority - Wikipedia
proof of burn Consensus (computer science) - Wikipedia#Some consensus protocols
Proof of personhood - Wikipedia
Proof of space - Wikipedia
proof of elapsed time Consensus (computer science) - Wikipedia#Some consensus protocols
lightning network
ライトニングネットワーク - Wikipedia
Andreas M. Antonopoulos、Olaoluwa Osuntokun、René Pickhardt「マスタリング・ライトニングネットワーク」安土茂亨、中城元臣、深田涼太、鳩貝淳一郎監譯、株式会社クイープ譯 2022
lightning/bolts: BOLT: Basis of Lightning Technology (Lightning Network Specifications)
應用
仮想通貨 - Wikipedia
暗号通貨 - Wikipedia
デジタル通貨 - Wikipedia#暗号通貨
暗号資産 - Wikipedia
ビットコイン - Wikipedia
Satoshi Nakamoto "Bitcoin: A Peer-to-Peer Electronic Cash System" 2009/3/24
純粹なP2P (peer to peer)型電子通貨システムを導入すれば、オンライン決濟は金融機關を介さずに直接的に當事者閒で行へるやうになる。digital 署名はこの問題の解決に寄與する要素ではあるが、二重使用を防止するための信賴できる第三者機關が依然として必要とされる場合、システムの主要な利點が失はれてしまふ。
本論文では、P2P (peer to peer)ネットワークを利用した二重使用問題の解決策を提案する。本ネットワークでは、取引をハッシュ化して繼續的なハッシュベースのプルーフ・オブ・ワーク連鎖に記錄することで、取引時點を證明する。これにより、プルーフ・オブ・ワークを再實行することなく記錄內容を改竄することは不可能となる。最も長い連鎖は、單に一聯の取引順序を證明するだけでなく、それが最も多くの CPU リソースプールから生成されたことの證左ともなる。ネットワークの過半數の CPU リソースが攻擊目的で協調してゐないノードによって制禦されてゐる限り、これらのノードは最も長い連鎖を生成し續け、攻擊者を上囘る速度で更新を行ふ。本ネットワーク自體に必要な構造は最小限である。メッセージは最善を盡くしてブロードキャストされ、ノードは任意のタイミングでネットワークへの參加・離脱が可能であり、不在期閒中に起こった取引の證明として、最長のプルーフ・オブ・ワーク連鎖を受け入れる仕組みとなってゐる。
Andreas M. Antonopoulos "Mastering Bitcoin" 2017
Bitmessage - Wikipedia
ビットコインATM - Wikipedia
ビットコインバブル - Wikipedia
2020年Twitterビットコイン詐欺 - Wikipedia
ビットコインのスケーラビリティ問題 - Wikipedia
各国におけるビットコインの法的な扱い - Wikipedia
ビットコイン法 - Wikipedia
ステーブルコイン - Wikipedia
暗号通貨 - Wikipedia#ステーブルコイン
スマート・コントラクト - Wikipedia
分散型アプリケーション - Wikipedia
DeFi - Wikipedia
Ethereum
イーサリアム - Wikipedia
イーサリアムクラシック - Wikipedia
NFT (non-fungible token)
非代替性トークン - Wikipedia
Alexander Yakubov, Wazen Shbair, Nida Khan, Radu State, Christophe Medinger, Jean Hilger “BlockPGP: A Blockchain-based Framework for PGP Key Servers” 2020
DNS にも應用がある
fediverse
Fediverse - Wikipedia
ActivityPub
ActivityPub - Wikipedia
Misskey - Wikipedia
マストドン (ミニブログ) - Wikipedia
Facebook Threads
OStatus
OStatus - Wikipedia
AT Protocol
AT Protocol - Wikipedia
Bluesky - Wikipedia
Nostr - Wikipedia
新月 (掲示板) - Wikipedia
Bitmessage - Wikipedia
Freenet
Freenet - Wikipedia
Tor
Tor - Wikipedia
オニオンルーティング - Wikipedia